
import tpl from './index.html';

export default {
    // 组件字模板
    template: tpl,
    // 外部传入数据
    propTypes: {
        // 0、组件默认对外双向绑定的数据
        value: {
            type: 'numeric',
            value: 0
        },
        // 1、组件包裹层通用属性
        // 自定义class
        className: {
            type: 'string',
            value: ''
        },
        // 自定义行内样式
        style: {
            type: 'string',
            value: ''
        },
        // 组件禁用状态
        disabled: {
            type: function (value, props){
                // 只要写了这个属性，有没有值都认了
                return true;
            },
            value: false
        },
        // 2、更多自定义参数
        // 警告及错误样式阈值
        warning: {
            type: 'numeric',
            value: 100
        },
        error: {
            type: 'numeric',
            value: 100
        }
    },
    // 内部数据
    data: function(){
        return {
            name: "组件名称",
            // 状态
            states: {
            
            },
            // 配置 
            opts: {
                
            },
            // 其他
            other: {

            }
        }
    },
    // 方法
    methods: {
        
    },
    // 监听
    watchers: {
        "value": {
            watcher: function(newValue){
                var self = this;
                if(newValue > 100){
                    this.set('value', 100)
                }
                if(newValue < 0){
                    this.set('value', 0)
                }
            },
            sync: true
        }
    },
    afterMount: function(){
        
    }
};